草庐IT

Java 验证框架

全部标签

java - 将数据从http服务器端推送到浏览器客户端的最佳方式

当客户端是网络浏览器时,将数据从服务器端推送到客户端的最佳方式是什么。我的服务器端是用java构建的,客户端是用html、js、ajax构建的。通信方式为HTTP协议(protocol)。 最佳答案 WebSockets是实现它的“真正”方式。WebSocketsJava实现Atmosphere 关于java-将数据从http服务器端推送到浏览器客户端的最佳方式,我们在StackOverflow上找到一个类似的问题: https://stackoverflow

java - Servlet Gson().toJson 死循环

我在servlet中遇到了一些问题,每次我更改下拉菜单中的选项时,一个不同的值将传递给servlet,然后它会导致无限循环。当我没有更改下拉列表中的选项(值没有变化)时,没有错误。这是我的代码:我的Javascript:functionloadStaff(){//dropdownvarpositionDropDown=document.getElementById("positionsDropdown");//valueofthedropdownvarpositionID=positionDropDown.options[positionDropDown.selectedIndex].

javascript - 使用 JavaScript 进行表单验证?

我正在尝试通过JavaScript使用表单验证,但是我似乎没有得到任何响应,即使它在那里也没有警告。ExampleFormfunctionCheckForBlank(){if(document.getElementById('name').value=""){alert("entersomethingvalid");returnfalse;}}Name:Age:Email: 最佳答案 在javascript中使用===或==进行条件检查。if(document.getElementById('name').value===""){a

javascript - Angular 2 模板驱动的表单组验证

我有一个关于Angular2模板驱动表单的问题。我已经设置了其中一个表单,如果表单组中的一个输入无效,我希望能够向用户显示警告。例如,假设我有以下形式:Submit如果firstName和/或lastName无效,我希望包含输入“firstName”和输入“lastName”的整个表单组发生变化。我知道我可以做这样的事情:它会工作得很好。但这是棘手的部分:在这个例子中,我只有两个输入和一个简单的验证规则,所以它很容易检查并且仍然可读。但是,如果我有10个输入来检查表单组怎么办?我不想最终不得不手动检查每个输入的有效性。我找到的解决方案之一是在第一个里面创建一个子表单:Submit这是我

javascript - Angular 4 - 具有动态参数值的自定义验证器

我编写了一个自定义验证器来检查日期是否超过某个最小日期。代码如下所示:exportfunctionvalidateMinDate(min:Date):ValidatorFn{return(c:AbstractControl)=>{if(c==null||c.value==null)returnnull;letisValid=c.value>=min;if(isValid){returnnull;}else{return{validateMinDate:{valid:false}};}};}我这样初始化我的表单this.definitionForm=this.fb.group({"fro

javascript - Formik 和 yup 表单验证无法按预期使用 Virtualized Select

为了进行表单验证,我使用formik创建了一个表单。我已经使用了组件Formik、Form、Fieldformformik并配置了它们:import{Formik,Form,Field}from"formik";import{object,string}from"yup";importisEmptyfrom"lodash/isEmpty";importFormikSelectInputfrom"../common/FormikSelectInput";classAppextendsComponent{render(){constoptions=this.props.categories

java - 最佳实践 : how to host server-side code in the maven repository

将javascript/html/css代码放入maven存储库的最佳方式是什么,以便java项目可以轻松使用。有没有办法让包含的项目可以很容易地通过包含项目“网络可见”?例如,假设我编写了一个非常有用的tricks.js文件并将其放入mvn存储库中。是否可以创建一个将tricks.js添加为依赖项然后执行的Web项目导致提供tricks.js文件? 最佳答案 外部资源应该打包成工件并发布到存储库(为简单起见,使用jar工件,但您可以指定一个assembly来打包一个zip,而不是明确工件的用途)。maven-dependency-

java - Java 是否存在类似 Sprocket 的东西

Sprocket是一个用于管理JavaScript依赖项的Ruby库。它可以在JavaScript文件中以特殊格式的注释声明依赖关系,并将所有必需的文件连接到服务器端。(在此处阅读更多信息:http://getsprockets.org/)在我工作的地方,我们确实需要这样一个框架,但它必须是Java库的形式。有这样的东西吗?您还提出了哪些其他解决方案来管理JavaScript依赖项? 最佳答案 你可以看看这个webutilities 关于java-Java是否存在类似Sprocket的东

java - XSS攻击防范

我正在开发一个网络应用程序,用户可以在其中回复博客条目。这是一个安全问题,因为它们可以发送将呈现给其他用户(并由javascript执行)的危险数据。他们无法格式化他们发送的文本。没有“粗体”,没有颜色,什么都没有。只是简单的文字。我想出了这个正则表达式来解决我的问题:[^\\w\\s.?!()]因此,任何不是单词字符(a-Z、A-Z、0-9)、不是空格、“.”、“?”、“!”、“(”或“)”的内容都将被替换为空字符字符串。每个引号都将替换为:“"”。我在前端检查数据,在我的服务器上检查。有人可以绕过这个“解决方案”吗?我想知道StackOverflow是如何做这件事的?这里有

javascript - 将 WMD 编辑器的预览 HTML 与服务器端 HTML 验证对齐(例如,没有嵌入的 JavaScript 代码)

关于如何对WMD编辑器生成的Markdown进行服务器端清理以确保生成的HTML不包含恶意脚本,如下所示:但我也没有找到堵住客户端漏洞的好方法。当然,客户端验证不能替代服务器上的清理验证,因为任何人都可以假装是客户端并向您发送令人讨厌的Markdown。而且,如果您在服务器上删除HTML,攻击者将无法保存错误的HTML,这样其他人以后就无法看到它,并且他们的cookie被盗或session被错误的脚本劫持。因此,有一个有效的案例表明,在WMD预览Pane中执行无脚本规则可能也不值得。但想象一下,攻击者找到了一种将恶意Markdown放到服务器上的方法(例如,来自另一个站点的受损提要,或